***Antipattern***
Count: 1
-PUT  /applications/{listingVersionId}/recommendedservices Creates a list of recommended service integrators for an application with specified id. If the call is made with an empty list, it clears the entire existing list of recommended services associated with this application, if any.

***Pattern***
Count: 76
-PATCH  /applications/{listingVersionId}/supportingdocs/{id} Partially Update a supporting document for the application.
-DELETE  /applications/{listingVersionId}/supportingdocs/{id} Delete a supporting document for an existing application.
-PUT  /applications/{listingVersionId}/comments/{id} Update status comment.
-DELETE  /artifacts/{artifactId} Delete an existing artifact
-GET  /applications/{listingVersionId}/availableservices Get a list of service integrators. Publishers can recommend particular service integrators for their application listings by adding them to each application listing as recommended services.
-POST  /users Add an user registered with current company (partner). The user needs to have an o.com account to able to access the Partner portal application.
-POST  /services Create a new Service listing. Service goes through a state lifecycle.A newly created Service starts off in the "New" state. Service edits are allowed in this state.To publish the listing to the Marketplace, the service listing needs to be submitted for Approval.
-GET  /cloudservices/{serviceCode}/resourcenames Get the list of Cloud Resources under each Cloud Service.
-GET  /appstore/publisher/v2/applications/{listingVersionId}/packages Get the package configured for the application. A package describes the resources and its properties required for the application.
-PUT  /applications/{listingVersionId}/relateddocs/{id} Update a related document for the application.
-GET  /profile Fetch the company (partner) profile details.
-POST  /applications/{listingVersionId}/relateddocs Creates related documents for the an application with the specified ID.
-GET  /users Fetch all the users registered with current company (partner).
-POST  /applications/{listingVersionId}/banner Create a banner for the application.
-DELETE  /services/{listingVersionId} Delete a service. Only services that are in NEW state can be deleted.
-PATCH  /applications/{listingVersionId}/packages/{packageVersionId} Validate the specified package. A listing with a package cannot be submitted for approval if the corresponding package is not validated.
-GET  /cloudservices/{serviceCode}/resourcenames/{resourceName} Get the list of Cloud Resource Properties under each Cloud Resource.
-PATCH  /applications/{listingVersionId}/banner Partially Update the banner for the application.
-POST  /applications/{listingVersionId}/supportingdocs Creates supporting documents for the an application with the specified ID.
-GET  /products/{productCode}/filters Get a list of supported filters for the given product. These filters are custom attributes that can be added to applications and are useful for customers to find your applications when browsing the Marketplace.
-DELETE  /services/{listingVersionId}/trainedprofessionals Delete the TrainedProfessional for a service with the specified ID.
-DELETE  /applications/{listingVersionId}/packages/{packageVersionId} Delete the package of an application.
-GET  /applications/{listingVersionId}/packages/{packageVersionId}/packagelogs Get the details of the specified package logs( validation / test install).
-GET  /users/{id}/partners Fetch all the partners for the admins to impersonate.
-GET  /applications Get the list of all applications for the publisher.
-GET  /machineimagestatus Get a list of available Machine Image Upload statuses.
-PATCH  /applications/{listingVersionId}/relateddocs/{id} Partially Update a related document for the application.
-DELETE  /machineimages/{uploadRequestId} Deletes a machine image. This call has two variants. If data center names are passed in body while making the delete request, machine image will be deleted from specified data centers only. If body is not passed, machine image will be deleted from all the date centers.
-PATCH  /services/{listingVersionId}/successstories/{id} Updates customer Success Stories details for a service with the specified ID.
-GET  /appstore/publisher/v2/applications/{listingVersionId}/packages/{packageVersionId} Get the details of the specified package.
-PUT  /applications/{listingVersionId}/packages/{packageVersionId} Update the specified package. If the package was validated it will need to be validated again after the update.Packages of an already published listing cannot be updated.
-POST  /terms/{termsid}/version Create a new term version.
-DELETE  /applications/{listingVersionId}/banner Delete the banner for the application.
-GET  /machineimages/{uploadRequestId} Get the detailed status of a machine image upload request.
-PATCH  /appstore/publisher/v2/applications/{listingVersionId}/packages/{packageVersionId} Validate the specified package. A listing with a package cannot be submitted for approval if the corresponding package is not validated.
-DELETE  /applications/{listingVersionId}/comments/{id} Delete a status comment.
-POST  /applications/{listingVersionId}/version Create a new version for an already published application listing. A new version is necessary to make edits to an already published listing.The new version has to go though the same life cycle and approval workflow to get published to the Marketplace. Publishing the new version automatically archives the older version from the Marketplace. At any given point only one version of the application is active on the Marketplace.
-PUT  /applications/{listingVersionId}/screenshots/{id} Update screenshot for an application.
-GET  /devicetypes Get a list of device types. A device type is associated with an application listing to describe whether an application is a web based application, mobile app or desktop application.
-GET  /applications/{listingVersionId}/packages Get the package configured for the application. A package describes the install/uninstall steps and the resources required for the application.
-PUT  /applications/{listingVersionId} Update the Application listing. Only applications in a NEW or REJECTED state can be updated. To update a listing that is published, a new version of the listing must be created.
-PATCH  /machineimages/{uploadRequestId} This is the final step of chunk upload. It is to request the merge of the chunk files and complete the upload.
-GET  /applications/{listingVersionId}/comments Get the status comments for the application.
-POST  /leads/{leadId}/notes Create Note for a lead.
-PUT  /profile/icon Update the icon of the partner.
-GET  /artifacts Get the list of Artifacts.
-GET  /supportingdoctypes Get a list of available supporting document types and the query parameter "hastemplate" lets you to get only the supporting document types with templates.
-GET  /languages Get a list of all languages. Publishers can associate a set of languages as supported languages for their Application listing. This is to help customers find applications that work in a language of their choice.
-DELETE  /applications/{listingVersionId}/screenshots/{id} Delete a screenshot for an existing application.
-PATCH  /applications/{listingVersionId} This method can be used to perform a partial update operation on application attributes or perform a state change operation in the application life-cycle. In order to perform a partial update, provide any root-level attribute in the payload. The content of that specified attribute will be completely replaced, while keeping the values of the other attributes same as before.
-DELETE  /applications/{listingVersionId} Delete an application. Only applications that are in a NEW state can be deleted.
-DELETE  /applications/{listingVersionId}/relateddocs/{id} Delete a related document for an existing application.
-POST  /applications/{listingVersionId}/packages Create a package for the given application. A package is an orchestration template that describes the application install/uninstall/upgrade steps.
-PUT  /applications/{listingVersionId}/icon Update the icon for the application.
-PUT  /services/{listingVersionId}/serviceproviders/{id} Update a service provider for the application.
-POST  /applications/{listingVersionId}/comments Create a status comment for the application.
-GET  /storageimages Get a list of all the machine images available in default data center. Other data center names can be passed in query param, if user wants to fetch details from other data centers.
-PUT  /services/{listingVersionId}/locations/{id} Update a location associated with the service.
-DELETE  /appstore/publisher/v2/applications/{listingVersionId}/packages/{packageVersionId} Delete the package of an application.
-GET  /applications/{listingVersionId}/packages/{packageVersionId} Get the details of the specified package.
-GET  /applications/{listingVersionId} Get the details of the application with the specified listing ID.
-GET  /installrequests Get the list of application install requests for all your published apps.
-PATCH  /applications/{listingVersionId}/screenshots Partially Update the Screenshot for an application.
-POST  /applications/{listingVersionId}/screenshots Create screenshots for an application.
-DELETE  /appstore/publisher/v2/applications/{listingVersionId}/packages/{packageVersionId}/resources/{resourceId} Delete a specific resource of the application's package.
-POST  /machineimages/{uploadRequestId}/chunk Upload part of a file in a chunk and specify the chunk number.
-GET  /leads/{leadId}/notes Get all notes for a lead.
-GET  /ocitenancies/{tenancyId}/computeimages Get the available compute images for a given tenancyId of a partner.
-POST  /applications/{listingVersionId}/icon Upload an icon for the application listing. The icon dimensions must be 130 X 130 px. The following extensions are allowed: png, jpg.
-GET  /installstatuses Get a list of install statuses required for install requests.
-GET  /applications/{listingVersionId}/recommendedservices Get the list of all the recommended services configured for a listing.
-POST  /applications Create a new application listing. The application goes through a state lifecycle. A newly created application starts off in the "New" state. Application edits are allowed in this state. To publish the listing to the Marketplace, the application listing needs to be submitted for approval.
-GET  /ocitenancies/{tenancyId}/compartments Get the available compartments for a given tenancyId of a partner.
-GET  /appstore/publisher/v2/applications/{listingVersionId}/packages/{packageVersionId}/packagelogs Fetches the packagelogs of an applications's package version id.
-PUT  /applications/{listingVersionId}/banner Update the banner for the application.
-DELETE  /leads/{leadId} Delete a lead with specific id.
